package com.lwlk.zdk.mapper.pw;

import com.lwlk.zdk.model.pw.pwMessage;
import com.lwlk.zdk.model.pw.pwMessageExample;
import io.swagger.models.auth.In;
import org.apache.ibatis.annotations.Param;

import java.util.Date;
import java.util.List;
import java.util.Map;

public interface pwMessageMapper {
    int countByExample(pwMessageExample example);

    int deleteByExample(pwMessageExample example);

    int insert(pwMessage record);

    int insertSelective(pwMessage record);

    List<pwMessage> selectByExample(pwMessageExample example);

    int updateByExampleSelective(@Param("record") pwMessage record, @Param("example") pwMessageExample example);

    int updateByExample(@Param("record") pwMessage record, @Param("example") pwMessageExample example);

    List<pwMessage> selectDim(@Param("platformId") Integer platformId, @Param("startTime") Date startTime, @Param("isReply") Integer isReply,@Param("endTime")Date endTime);

    String selectPlatformId(int i);

    int updateMessage(@Param("i") int i, @Param("messageObjectTypeId") String messageObjectTypeId);

    int updateResult(@Param("responseTime") Date responseTime, @Param("msgId") Integer msgId, @Param("content") String content, @Param("count")Integer count);

    int updateEnterpriseId(@Param("roleType") String roleType,@Param("eId") String eId, @Param("i") int i);

    List<Map<String, Object>> selectSubordinate(@Param("startTime") String startTime, @Param("endTime") String endTime,@Param("uId") Integer uId,@Param("messageObjectType") String messageObjectType,@Param("platformIds") Integer platformIds);

    List<Map> selectMessageDetails(@Param("messageId") Integer messageId);

    int deleteBatch(@Param("id") Integer id);

    Integer selectResponseSum(@Param("msgId") Integer msgId);
}